PDAO위키
최근 변경
최근 토론
임의 문서
도구
최근 변경
State Machine
(편집 요청)
[알림]
문서를 편집할 권한이 없기 때문에 편집 요청으로 이동되었습니다.
편집 권한이 부족합니다. 로그인된 사용자 OR geoip:KR(이)여야 합니다. 해당 문서의
ACL 탭
을 확인하시기 바랍니다.
닫기
RAW 편집
미리보기
=== Reentrancy (재진입 공격) === 상태 전이 함수가 외부 컨트랙트에 ETH를 송금하거나 외부 함수를 호출할 때, 호출받은 컨트랙트가 원래 함수를 다시 호출(재진입)할 수 있다. 이때 상태가 아직 변경되지 않았다면, {{{atStage}}} modifier를 통과하여 동일한 함수가 반복 실행된다.[*3] 대응은 Checks-Effects-Interactions(CEI) 패턴이다. 상태 변경(Effect)을 외부 호출(Interaction)보다 먼저 수행하면, 재진입 시 이미 변경된 상태에 의해 {{{atStage}}}에서 revert된다.[*7 ConsenSys Diligence. [[https://consensysdiligence.github.io/smart-contract-best-practices/attacks/reentrancy/|Reentrancy]]. ''Smart Contract Best Practices''.]
요약
문서 편집을
저장
하면 당신은 기여한 내용을
CC BY-SA 4.0
으로 배포하고 기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다. 이
동의는 철회할 수 없습니다.
비로그인 상태로 편집합니다. 로그인하지 않은 상태로 문서 편집을 저장하면, 편집 역사에 본인이 사용하는 IP(216.73.217.42) 주소 전체가 영구히 기록됩니다.
저장
닫기
Liberty
|
the tree